Draft
Conversation
Co-authored-by: radar <2687+radar@users.noreply.github.com>
Co-authored-by: radar <2687+radar@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Implement Black Lotus card functionality
Implement Black Lotus card
Jan 12, 2026
Co-authored-by: radar <2687+radar@users.noreply.github.com>
Contributor
Author
radar
requested changes
Jan 12, 2026
radar
left a comment
Owner
There was a problem hiding this comment.
Can you do this without copying the logic in ManaAbility? You can change ManaAbility if you need to.
…ng validation logic Co-authored-by: radar <2687+radar@users.noreply.github.com>
Contributor
Author
Fixed in b4b7205. I refactored
Black Lotus now uses |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements Black Lotus, a zero-cost artifact with the activated ability:
{T}, Sacrifice Black Lotus: Add three mana of any one color.Implementation
Card definition (
lib/magic/cards/black_lotus.rb): UsesArtifactbuilder DSL with a customManaAbilitythat:"{T}, Sacrifice {this}":all)amount 3to specify adding 3 manaManaAbility refactor (
lib/magic/mana_ability.rb): Enhanced the baseManaAbilityclass to support configurable mana amounts:amountclass method to configure mana amount (defaults to 1)validate_choice!methodresolve!to usevalidate_choice!and configurableamountTests (
spec/cards/black_lotus_spec.rb): Verifies mana generation, sacrifice mechanic, and multi-color choicesThe refactored
ManaAbilityclass provides a clean DSL pattern for configuring mana amounts without code duplication, maintaining backward compatibility with existing cards.Original prompt
Created from VS Code via the GitHub Pull Request extension.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.